草庐IT

JavaScript undefined 替换为 null

全部标签

c# - 在C#中将 'var'的值初始化为null

这个问题在这里已经有了答案:Howtoinitializevar?(11个答案)关闭8年前。我想给一个变量赋初值null,并在下一个if-elseblock中赋值,但是编译器报错,Implicitly-typedlocalvariablesmustbeinitialized.我怎样才能做到这一点?

c# - "this"可以在 C# 虚拟方法中为 null 吗?其余的实例方法会发生什么?

我很好奇是否有办法让C#中的虚方法中的this为null。我认为这是不可能的。我在现有代码中看到了这一点,在代码审查期间,我想100%肯定会对其删除发表评论,但我希望得到社区的一些确认和更多背景信息。this!=null在任何非静态/实例方法中都是这样吗?否则它会是一个空指针异常吗?我在考虑扩展方法以及我可能不熟悉的来自多年Java的任何C#功能。 最佳答案 这不是标准的C#,而是来自Lasse的答案和Jon,通过一些IL-fiddling,您可以进行非虚拟调用(对虚拟或非虚拟方法)传递空this:usingSystem;using

c# - 将德语字符(变音符号、重音符号)替换为英语对应字符

将德语字符(元音变音、重音符号)替换为英语字符我需要从各种文本字段中删除所有德语特定字符,以便处理到另一个系统中,该系统不会接受它们为有效。所以我知道的字符是:ß一种Øü一种厄ü目前我有一些手动替换它们的方法:myGermanString.Replace("ä","a").Replace("ö","o").Replace("ü","u").....但我希望有一种更简单/更有效的方法来做到这一点。由于每次运行我将在数千个字符串上执行此操作,其中99%将不包含这些字符。也许涉及某种CultureInfo的方法?(例如,根据MS,以下返回的字符串是相等的String.Compare("Str

c# - 仅当字符串不为 null 或空时附加逗号

我正在用C#创建简单的网络表单。在这里,我通过连接得到了完整的地址,效果很好。但是假设我没有address2、city等,那么我想跳过在每个字符串末尾添加逗号(例如,如果address1为null或空)。stringaddress1="Address1";stringaddress2="Address2";stringcity="City";stringcountry="Country";stringpostalCode="00000";stringfullAddress=?-->address1+","+address2+","+cityandsoon 最

c# - int.TryParse = null 如果不是数字?

如果无法将字符串解析为int,是否有返回null的方法?与:public....,string?categoryID){int.TryParse(categoryID,outcategoryID);获取“无法从‘outstring’转换为‘outint’”怎么办?编辑:由于asp.net的限制不再相关是解决问题的方法/M 最佳答案 首先,为什么要尝试将字符串解析为int并将结果粘贴回字符串?方法签名是boolint.TryParse(string,outint)所以你必须给一个int类型的变量作为第二个参数。这也意味着如果解析失败,

C# 替换字符串中的字符串

是否可以在不分配返回值的情况下替换字符串中的子字符串?我有一个字符串:stringtest="Hello[REPLACE]world";我想用其他东西替换子字符串[REPLACE]:test=test.replace("[REPLACE]","test");这工作正常,但如果不将返回值分配给变量,我该怎么做呢?我想要这样的东西:test.replace("[REPLACE]","test"); 最佳答案 正如dlev所提到的,您不能使用string执行此操作,因为字符串在.NET中是不可变的-一旦构造了一个字符串,您就无能为力了(不

c# - 用 LINQ 替换嵌套的 foreach;修改和更新内部深处的属性

考虑更改5或6层深对象的一个​​或多个属性的数据成员的要求。有一些子集合需要迭代才能到达需要检查和修改的属性。在这里,我们调用了一个方法来清除员工的街道地址。由于我们在循环中更改数据,当前的实现需要一个for循环来防止异常:Cannotassignto"someVariable"becauseitisa'foreachiterationvariable'这是带有嵌套foreach和for的当前算法(混淆)。foreach(varempincompany.internalData.Emps){foreach(varaddrinemp.privateData.Addresses){intn

c# - 如何使用 Linq 处理带有 FirstOrDefault 的 NULL 对象属性

我真正的应用程序问题如下所示Employeeempl=newEmployee(397947,"David","Redson",80000);employees.Add(empl);employees.Add(newEmployee(174966,"Alfred","Swanson",50000));employees.Add(newEmployee(848024,"Alima","Bieyrou",40000));employees.Add(newEmployee(number:397462,fName:"Robert",lName:"Nants",salary:30000));str

c# - Sum() 在 Entity Framework 查询中返回 null

我有一个包含这些行的大型EntityFramework查询。varprograms=frompinRepository.Query()wherep.OfficeId==CurrentOffice.IdlettotalCharges=p.ProgramBillings.Where(b=>b.Amount>0&&b.DeletedDate==null).Select(b=>b.Amount).Sum()lettotalCredits=p.ProgramBillings.Where(b=>b.Amount-b.Amount).Sum()letbillingBalance=(totalChar

c# - 销毁对象时自定义事件是否需要设置为null?

假设我们有2个对象,Broadcaster和Listener。Broadcaster有一个名为Broadcast的事件,Listener订阅了该事件。如果Listener在没有取消订阅Broadcast事件的情况下被释放,它将保留在内存中,因为Broadcaster包含引用它的事件委托(delegate)。我很好奇的是,如果Broadcaster在没有Listener取消订阅或Broadcaster设置Broadcast=null的情况下被处置,Broadcaster是否会保留在内存中?除了一位博主认为不将事件设置为null会将源保留在内存中(找到here)之外,我无法找到任何对这个问